home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / libblas / gemm.z / gemm
Encoding:
Text File  |  2002-10-03  |  7.1 KB  |  179 lines

  1. GEMM(3F)                                              Last changed: 11-2-98
  2.  
  3.  
  4. NNAAMMEE
  5.      SSGGEEMMMM, DDGGEEMMMM, CCGGEEMMMM, ZZGGEEMMMM - Multiplies a real or complex general
  6.      matrix by a real or complex general matrix
  7.  
  8. SSYYNNOOPPSSIISS
  9.      Real
  10.  
  11.         CCAALLLL SSGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
  12.         _c,, _l_d_c))
  13.  
  14.      Double precision
  15.  
  16.         CCAALLLL DDGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
  17.         _c,, _l_d_c))
  18.  
  19.      Complex
  20.  
  21.         CCAALLLL CCGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
  22.         _c,, _l_d_c))
  23.  
  24.      Double complex
  25.  
  26.         CCAALLLL ZZGGEEMMMM ((_t_r_a_n_s_a,, _t_r_a_n_s_b,, _m,, _n,, _k,, _a_l_p_h_a,, _a,, _l_d_a,, _b,, _l_d_b,, _b_e_t_a,,
  27.         _c,, _l_d_c))
  28.  
  29. IIMMPPLLEEMMEENNTTAATTIIOONN
  30.      IRIX systems
  31.  
  32. DDEESSCCRRIIPPTTIIOONN
  33.      SSGGEEMMMM and DDGGEEMMMM multiply a real general matrix by a real general
  34.      matrix.
  35.  
  36.      CCGGEEMMMM and ZZGGEEMMMM  multiply a complex general matrix by a complex
  37.      general matrix.
  38.  
  39.      These routines perform one of the matrix-matrix operations:
  40.  
  41.           _C <- _a_l_p_h_a _o_p(_A) or _o_p(_B) + _b_e_t_a _C
  42.  
  43.      where _o_p(_X) is one of the following:
  44.  
  45.           _o_p(_X) = _X
  46.                    _T
  47.           _o_p(_X) = _X
  48.                    _H
  49.           _o_p(_X) = _X  (CCGGEEMMMM and ZZGGEEMMMM only)
  50.  
  51.      where
  52.  
  53.      * _a_l_p_h_a and _b_e_t_a are scalars
  54.  
  55.      * _A, _B, and _C are matrices
  56.  
  57.      * _o_p(_A) is an _m-by-_k matrix
  58.  
  59.      * _o_p(_B) is a _k-by-_n matrix
  60.  
  61.      * _C is an _m-by-_n matrix.
  62.          _T
  63.      * _X    is the transpose of _x
  64.         _H
  65.      * _X   is the conjugate transpose of _X.
  66.  
  67.      These routines have the following arguments:
  68.  
  69.      _t_r_a_n_s_a    Character*1.  (input)
  70.                Specifies the form of op(A) to be used in the matrix
  71.                multiplication, as follows:
  72.  
  73.                _t_r_a_n_s_a = 'N' or 'n': _o_p(_A) = _A
  74.                                               _T
  75.                _t_r_a_n_s_a = 'T' or 't': _o_p(_A) = _A
  76.  
  77.                                               _T
  78.                _t_r_a_n_s_a = 'C' or 'c', _o_p(_A) = _A    (SSGGEEMMMM and DDGGEEMMMM), or
  79.                          _H
  80.                _o_p(_A)  = _A   (CCGGEEMMMM and ZZGGEEMMMM)
  81.  
  82.      _t_r_a_n_s_b    Character*1.  (input)
  83.                Specifies the form of _o_p(_B) to be used in the matrix
  84.                multiplication, as follows:
  85.  
  86.                _t_r_a_n_s_b = 'N' or 'n': _o_p(_B) = _B
  87.  
  88.                                              _T
  89.                _t_r_a_n_s_b = 'T' or 't': _o_p(_B) = _B
  90.  
  91.                                              _T
  92.                _t_r_a_n_s_b = 'C' or 'c': _o_p(_B) = _B  (SSGGEEMMMM and DDGGEEMMMM), or
  93.                         _H
  94.                _o_p(_B) = _B  (CCGGEEMMMM and ZZGGEEMMMM)
  95.  
  96.      _m         Integer.  (input)
  97.                Specifies the number of rows in matrix _o_p(_A) and in matrix
  98.                _C.  _m must be >= 0.
  99.  
  100.      _n         Integer.  (input)
  101.                Specifies the number of columns in matrix _o_p(_B) and in
  102.                matrix _C.  _n must be >= 0.
  103.  
  104.      _k         Integer.  (input)
  105.                Specifies the number of columns of matrix _o_p(_A) and the
  106.                number of rows of matrix _o_p(_B).  _k must be >= 0.
  107.  
  108.      _a_l_p_h_a     First scalar factor.  (input)
  109.                SSGGEEMMMM: Real.
  110.                DDGGEEMMMM: Double precision.
  111.                CCGGEEMMMM: Complex.
  112.                ZZGGEEMMMM: Double complex.
  113.  
  114.      _a         Array of dimension (_l_d_a,_k_a).  (input)
  115.                SSGGEEMMMM: Real array.
  116.                DDGGEEMMMM: Double precision array.
  117.                CCGGEEMMMM: Complex array.
  118.                ZZGGEEMMMM: Double complex array.
  119.                When _t_r_a_n_s_a = 'N' or 'n', _k_a is _k; otherwise, it is _m.
  120.                Contains the matrix _A.
  121.  
  122.                Before entry with _t_r_a_n_s_a = 'N' or 'n', the leading _m-by-_k
  123.                part of array _a must contain matrix _A; otherwise, the
  124.                leading _k-by-_m part of array _a must contain matrix _A.
  125.  
  126.      _l_d_a       Integer.  (input)
  127.                Specifies the first dimension of _a as declared in the
  128.                calling program.
  129.                When _t_r_a_n_s_a = 'N' or 'n', _l_d_a >= MMAAXX(1,_m); otherwise, _l_d_a >=
  130.                MMAAXX(1,_k).
  131.  
  132.      _b         Array of dimension (_l_d_b,_k_b).  (input)
  133.                SSGGEEMMMM: Real array.
  134.                DDGGEEMMMM: Double precision array.
  135.                CCGGEEMMMM: Complex array.
  136.                ZZGGEEMMMM: Double complex array.
  137.                When _t_r_a_n_s_b = 'N' or 'n', _k_b is _n; otherwise, it is _k.
  138.                Contains the matrix _B.
  139.  
  140.                Before entry with _t_r_a_n_s_b = 'N' or 'n', the leading _k-by-_n
  141.                part of array _b must contain matrix _B; otherwise, the
  142.                leading _n-by-_k part of array _b must contain matrix _B.
  143.  
  144.      _l_d_b       Integer.  (input)
  145.                Specifies the first dimension of _b as declared in the
  146.                calling program.  When _t_r_a_n_s_b = 'N' or 'n', _l_d_b >= MMAAXX(1,_k);
  147.                otherwise, _l_d_b >= MMAAXX(1,_n).
  148.  
  149.      _b_e_t_a      Scalar factor.  (input)
  150.                SSGGEEMMMM: Real.
  151.                DDGGEEMMMM: Double precision.
  152.                CCGGEEMMMM: Complex.
  153.                ZZGGEEMMMM: Double complex.  When _b_e_t_a is supplied as 0, _c need
  154.                not be set on input.
  155.  
  156.      _c         Array of dimension (_l_d_c,_n).  (input and output)
  157.                SSGGEEMMMM: Real array.
  158.                DDGGEEMMMM: Double precision array.
  159.                CCGGEEMMMM: Complex array.
  160.                ZZGGEEMMMM: Double complex array.
  161.                Contains the matrix _C.
  162.  
  163.                Before entry, the leading _m-by-_n part of array _c must
  164.                contain matrix _C, except when _b_e_t_a is 0; in which case, _c
  165.                need not be set.  On exit, the _m-by-_n result matrix
  166.                overwrites array _c.
  167.  
  168.      _l_d_c       Integer.  (input)
  169.  
  170.                Specifies the first dimension of _c as declared in the
  171.                calling program.  _l_d_c >= MMAAXX(1,_m).
  172.  
  173. NNOOTTEESS
  174.      These routines are Level 3 Basic Linear Algebra Subprograms (Level 3
  175.      BLAS).
  176.  
  177. SSEEEE AALLSSOO
  178.      This man page is available only online.
  179.